﻿namespace MsForgeReboot.Framework.Entities {
    #region Usings

    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;

    #endregion

    /// <summary>
    ///   The user.
    /// </summary>
    public class User {
        
        #region Public Properties

        /// <summary>
        ///   Gets or sets the id.
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        ///   Gets or sets the username.
        /// </summary>
        [MaxLength(100)]
        [Required(AllowEmptyStrings = false)]
        [DataType(DataType.EmailAddress)]
        [Display(Name = "E-mail")]
        public string Username { get; set; }

        /// <summary>
        /// Gets or sets the name of the public.
        /// </summary>
        /// <value>
        /// The name of the public.
        /// </value>
        [MaxLength(100)]
        [Required(AllowEmptyStrings = false)]
        [Display(Name = "Ime")]
        public string PublicName { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether [receive notifications].
        /// </summary>
        /// <value>
        ///   <c>true</c> if [receive notifications]; otherwise, <c>false</c>.
        /// </value>
        public bool ReceiveNotifications { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether this instance is validated.
        /// </summary>
        /// <value>
        /// <c>true</c> if this instance is validated; otherwise, <c>false</c>.
        /// </value>
        [Display(Name = "Nalog je validiran")]
        public bool IsValidated { get; set; }

        public virtual IList<Role> Roles { get; set; }
        //public virtual IList<OAuthMembership> OAuthMemberships { get; set; }

        #endregion

    }
}